package com.weiyuwqj.api.service;

import com.weiyuwqj.api.base.BaseService;
import com.weiyuwqj.api.common.PageList;
import com.weiyuwqj.api.common.Paginator;
import com.weiyuwqj.api.model.*;

import java.util.List;
import java.util.Map;

import java.util.Date;


/**
 * Created by zhangyong on 2017/3/28.
 */
public interface BasAssetsPackageService extends BaseService<BasAssetsPackage> {

    /**
     * 查询包列表
     * @param assetsPackage
     * @return
     */
    PageList getPackageList(Paginator p,BasAssetsPackage assetsPackage);


    /**
     * 资产打包
     * @param itemStr
     */
    void insertPackage(String itemStr,Integer sysUserId,String packageName,String addip);

//    /**
//     * 还款
//     */
//    Map packageRepay(Integer packagePlanId, BusAssetRepay assetRepay, BusAssetPackagePlan packagePlan);

//    /**
//     * 包计划借款人还款到标账户
//     */
//    Map brrowerPackageRepay(BusAssetRepay assetRepay);

    /**
     * 根据包id修改包状态
     * @param newStatus
     * @param oldStatus
     * @param id
     * @return
     */
    Integer modifyPackageStatusById(Integer newStatus,Integer oldStatus,Integer id);

//    /**
//     * 标撤回
//     * @param itemId
//     */
//    void cancelCallBack(Integer itemId);
//
//    /**
//     * 解冻
//     * @param assetInvestList
//     * @param itemId
//     * @return
//     */
//    Object assetThaw(List<BusAssetInvest> assetInvestList,Integer itemId);
//
//    /**
//     * 批量投资
//     * @param item
//     * @param assetInvestList
//     * @return
//     */
//    Map batchInvest(BasItem item, List<BusAssetInvest> assetInvestList);
//
//    /**
//     * 成标
//     * @param itemId
//     * @param repayTime
//     * @param item
//     * @param assetInvestList
//     * @return
//     */
//    Date assetCreatBid(int itemId, Date repayTime, BasItem item, List<BusAssetInvest> assetInvestList,Integer packageId);

}
